The present invention relates to an arrangement in a cellular communication system supporting packet data communication, a cellular communication system supporting packet data communication and a method of controlling the load distribution in an arrangement or in a node in a communication system supporting packet data communication.
Cellular communication systems which, in addition to supporting communication of speech and circuit switched data, also support communication of packet data, are becoming more and more attractive. For example, for GSM (Global System for Mobile Communications) support for communication of packet data is developing through the general packet radio service (GPRS). Similarly the PDC system (Pacific Digital Communications) is provided with packet data communication support through the PPDC (Packet PDC). CDPD is another such packet data communication supporting service for the AMPS system.
The general packet radio service (GPRS) of GSM uses a packet mode technique for the transfer of data as well as signalling and GPRS radio channels are defined the allocation of which is flexible and time slots in a TDMA frame (Time Division Multiple Access) are shared by the users that are active and uplink and downlink are allocated separately. In GPRS, as well as in other packet data communication supporting cellular systems, nodes are introduced for management of the packet data communication. Such nodes are here called packet data nodes. In GPRS the packet data node is called the serving GPRS support node (SGSN) which is at the same hierarchical level as an ordinary MSC (Mobile Switching Center) and it keeps track of the locations of individual mobile subscriber stations, performs security functions and access control. The SGSN is connected to the base station system with Frame Relay. GPRS also comprises another node, the gateway GSN (GGSN) providing interworking with external packet switched networks and it is connected with SGSN via an IP-based GPRS backbone network. Generally the amount of data packets sent from a mobile station through the data network via the packet data node is much lower than the traffic from the data network, via the packet data node, towards a mobile subscriber station. One reason therefore is that the mobile subscriber station, which for example may be connected to a small personal computer (PC) it reads E-mails from a mail server etc. Thus the subscriber station here for example only sends a short packet whereas it receives a large amount of packets or long messages. If for example connecting to Internet, the mobile subscriber station may for example just send a short message requesting a file whereupon it receives a large file. The problem is that the demands as to bandwidth are very asymmetrical in the packet data node handling mobile subscriber stations for all of which the situation may be similar, i.e. the load on the uplink is low whereas the load on the downlink is high. A packet data node may thus need several processors and it is a problem to handle the distribution of the load on the processors.
Information about the load status in different processors therefore has to be maintained in the node in some way. However, when a message is sent from one processor to another, a certain amount of system resources are required (communication media bandwidth, CPU-power, and so on). A message containing such information is small, but the ratio of the resources needed for such messages and the resources used for the sum of the bytes in the message are high. This means that it is very expensive, from an information density point of view, to send messages and the overhead caused by such a kind of information distribution would be high.
What is needed is therefore a processing arrangement to be used in a packet data node particularly having asymmetrical requirements as to bandwidth for packets sent in one direction in relation to the amount of packets sent in the other direction which assures a safe and reliable transmission of packets in both directions without overload situations occurring or causing any delays or even worse, giving rise to loss of packets. Furthermore a cellular communication system supporting packet data communication is needed through which the above mentioned objects can be achieved. Still further, a method of controlling the load distribution in a packet data node in a cellular communication system supporting packet data communication is needed.
Therefore an arrangement is provided which comprises a processing arrangement at least comprising a number of first processing means and a number of second processing means. The first processing means communicate with a number of base stations and terminate a first communication protocol. The second processing means are given another functionality, namely that of managing the mobile subscriber stations which communicate with any of the base stations and terminating a second communication protocol for communication between the mobile subscriber stations and the packet data node in which the processing arrangement is provided. Each second processing means contains mobile subscriber station information for a number of mobile subscriber stations which are registered with the packet data node, each mobile subscriber station registered with the packet data node being assigned a particular second processing means. The first processing means are provided with information on the load on each second processing means and said first processing means use said information to assign mobile subscriber stations not actually registered with the arrangement to one of the second processing means. Information about the load status in the second processing means is provided to first processing means using the payload traffic sent from or via the data network to the mobile subscriber stations via the first processing means, at least if the load status in a second processing means exceeds a given value. In a particular embodiment separate load status information messages are created and sent from a second processing means to a first processing means if the packet communication load is low. In a exemplary embodiment information about the load status in a second processing means is included in each packet data message sent from a second processing means to a first processing means. In addition thereto, or as an alternative, load status information is provided with at least a given frequency to the first processing means and if no data packets are sent, a separate load status information message is sent so as to meet the requirements on the load status information transmission frequency. Alternatively, if the traffic is high, not every packet or message sent from a second processing means to a first processing means is provided with information about the load status of the particular second processing means but only with the given frequency.
At least of number of the second processing means may be provided with a timer, upon expiry of which a separate load status information message about the current load in the concerned second processing means is created and sent to the concerned first processing means. Alternatively, or additionally, the timer may be used to control the provision of load status information to the first processing means when load status information is added to the conventional traffic data packets sent.
In an advantageous embodiment each second processing means comprises a second message transportation system, second packet data handling means and load status information indicating means which are provided for keeping updated load status information about the local load status in the second processing means. First and second processing means communicate with each other using an interprocessor communication protocol. Examples thereon are ATM (Asynchronous Transfer Mode), Ethernet, FDDI (which is a token ring architecture). Other alternatives are however also possible.
In an exemplary embodiment load status information is added to a packet received in the message transportation system from the packet handling means of the second processing means to form a message comprising the packet data and the load status information, which message is provided to the relevant first processing means. The relevant first processing means is known since all mobile subscriber stations registered with the packet data node are assigned a particular second processing means keeping subscriber data information and thus the location is known.
In an alternative embodiment load status information is connected to a packet intended for a mobile subscriber station when there is a change in the load status in the second processing means. In a particular embodiment a limit is given and if the change in load status exceeds given limit, a message is connected to the payload traffic, i.e. a data packet. In a particular embodiment the second processing means includes means for communication with an external data network via third processing means terminating a third communication protocol. Alternatively the second processing means communicate with third processing means terminating a third protocol for communication with an external data network.
Particularly each first processing means comprises a first message transportation system and first packet handling means. In addition thereto each first processing means contains load status information holding means for holding information about the load status in all second processing means. Particularly the first load status information holding means contains one load status indicator for each second processing means and said load status indicators are updated with the current load status information when information is provided from a second processing means and said information is used for assigning a xe2x80x9cnewxe2x80x9d mobile subscriber station to one of the second processing means. In a particular embodiment a load status level is given for at least a number of the second processing means and the first processing means use the load status information contained in the load status information holding means to control the assignment of new mobile subscriber stations considering said load status levels, i.e. the assignment of new mobile subscriber stations is performed in order not to exceed the load status levels of any of the second processing means. In an exemplary embodiment each first processing means is provided with information on the desired relation between the load on the different second processing means and the first processing means use the load status information to assign new mobile subscriber stations to the second processing means in order to maintain such relation between the load situation in the respective second processing means.
Advantageously the first message transportation system includes decomposing means for decomposing messages incoming from the second processing means and for providing the load status information to the load status information holding means and for sending the data packets to the first packet handling means. Particularly each second processing means includes composing means for composing packet data information and load status information into a message to be sent to a first processing means. At least a number of the second processing means, in an advantageous embodiment, include(s) a timer for controlling the transmission of local load status information with or without packet data information to at least a number of the first processing means. Particularly the message composing means creates and sends a message to the first processing means either when data packets is/are received from the data network and/or when the timer expires, said timer being resetted each time a local load status information is sent out to a first processing means.
In a particular embodiment the arrangement comprises a packet data node in a cellular communication system such as for example a serving GPRS support node in the GSM system or a P-MSC node in the PDC-system.
According to the invention a cellular communication system supporting packet data communication is also provided, which comprises a number of packet data nodes, each of which communicates with a number of base stations using a first communication protocol and with an external data network over a third communication protocol. Each packet data node comprises a processing arrangement managing the packet data communication through the node. The processing arrangement comprises a number of first processing means and a number of second processing means. Each first processing means communicates with a number of base stations and terminates a first communication protocol. Each second processing means contains mobile subscriber station information and each second processing means manages a number of mobile subscriber stations registered with, or assigned to, it.
Each first processing means is provided with information about the load status in all the second processing means and the first processing means use said load status information for assigning new mobile subscriber stations not assigned to any of the second processing means, to one of said second processing means. Particularly the information about the load status in the second processing means is added to data communication packets sent via the second processing means and having a mobile subscriber station as a destination, at least when the packet data communication in the packet data node is high.
In an exemplary embodiment each second processing means comprises a timer for controlling the transmission of load status information to the first processing means and, if no packets are sent from the second processing means, a load status information message is created and sent as a separate message containing information about the local load status in the second processing means, to a number of first processing means. In a particular embodiment information on the load status in a second processing means is sent upon expiry of a timer controlling the frequency for sending of load status information to the first processing means. Load status information may be also be sent when the load status in the second processing means changes or when the change in load status exceeds a given value. Advantageously each second processing means comprises a message transportation system and second packet data handling means. Load status indication means are provided and the second message transportation system comprises message composing means composing a message consisting of local load status information and packet data information when a packet arrives. Particularly the second message transportation system includes a timer and the message composing means sends a message including local load status information of the second processing means upon reception of a packet and/or upon expiry of the timer which is resetted each time a message including load status information is sent out.
Each first processing means comprises a first message transportation system, first packet handling means and load status information holding means for keeping information about the load status of all the second processing means. The first message transportation system comprises message decomposing means for decomposing a message received from a second processing means and for providing the load status information to the load status information holding means and for transmitting the packet data information to one of the base stations via the first packet handling means.
The invention also provides a method of controlling the load distribution in a packet data node in a communication system supporting packet data communication. The packet data node comprises a processing arrangement managing and controlling the sending of packet data to/from mobile subscriber stations communicating with the packet data node via base stations. The method comprises the steps of: communicating packet data to/from the mobile subscriber stations via first processing means, managing packet data communication and communicating with the mobile subscriber stations in a second processing means via a second communication protocol, adding load status information to packets destinated for mobile subscriber stations in said second processing means, sending the load status information to first processing means using an interprocessor communication protocol, keeping load status information on all second processing means in each first processing means, using the load status information in the first processing means to assign a new mobile subscriber station not registered with the packet data node to a second processing means so that the load is distributed among the second processing means.
Particularly the method includes the steps of adding local load status information about the load in second processing means each time the second processing means sends a data packet to a first processing means. Alternatively the method includes the steps of, in a second processing means, detecting if the load status in the second processing means has changed, or that the change has exceeded a given value, if yes, adding load status information to packet data sent to the/a first processing means.
The method may also include the steps of providing load status information from each or, a number of, second processing means at a given frequency. Load status information may then, in order to provide information with the given frequency, add load status information to a packet sent from the second processing means, or if no packet is sent, sending a separate message containing load status information only. Particularly the method includes the steps of, in each second processing means, creating and sending a message including load status information either when a packet is received in the second processing means over a third communication protocol communicating with a data network and/or when a timer expires, and, resetting the timer each time a message is sent out containing load status information, examining the message in a receiving first processing means, and, if the message contains load status information, storing the load status information into load status information handling means, and, sending packet data information, if contained in the message, to the appropriate base station.